#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>

int main()
{
  umask(0);
  int fd = open("log.txt",O_WRONLY|O_CREAT|O_APPEND,0666);//以写方式打开
  if(fd == -1)
  {
    perror("open fail!\n");
    return 1;
  }
  printf("%d\n",fd);
  //const char* str = "aaaa\n";
  //write(fd, str, strlen(str));//这里我们需要靠拷贝'\0'吗？
  //不要，因为'\0'不是字符串的内容，通常作为字符串的结束标志
  //文件只需要保存有效字符个数即可
  //拷贝'\0'的话就也被文件当成有效字符，此时就会出现乱码
  //close(fd);
  return 0;
}
